Back to all projects Mobile game · Health & fitness

Reps RPG

A fitness RPG that turns your body into the controller. Real-time AI pose detection counts your pushups, squats and sit-ups as attacks in boss fights — with a pixel-art avatar, elemental weaknesses, leaderboards, and an App-Lock mode that gates TikTok behind a workout.

Client Personal product
Role Designer · developer
Released 2026 · in active dev
Platform Android · Google Play
01 · Hero screen
01 · Hero screen
02 · Boss fight
02 · Boss fight
03 · Avatar builder
03 · Avatar builder
04 · App Lock
04 · App Lock
05 · Leaderboards
05 · Leaderboards
Overview

Turning the boring part
of fitness into a game loop.

Most workout trackers ask you to enter the workout you just did. Reps RPG goes the other way: the workout is the game. ML Kit watches you through the camera, counts each rep, scores your form, and converts that into damage on a pixel-art boss. You don’t open the app to log; you open it to play.

01 · The brief

Habit-tracking is a chore.

Fitness apps live and die on motivation. The first week is easy; week three is a graveyard. I wanted a loop the user kept opening because they wanted to, not because they should.

02 · The approach

The body is the controller.

Camera-based pose detection turns every rep into an input. Bosses have elemental weaknesses (Fire · Pushups, Air · Squats, Water · Sit-ups) so the user picks the exercise that fits the fight.

03 · The outcome

A workout you actually want to start.

Now shipping on Google Play with App Lock — the standout feature where addictive apps are gated behind a real squat count. “Do ten squats to unlock TikTok.” Bad habit, gains.

What we shipped

Six systems that
turn workouts into a loop.

Every system serves the same goal: keep the user coming back. Real-time feedback, character growth, and small daily challenges so opening the app feels rewarding before the first rep is counted.

  • Real-time pose detection

    On-device ML Kit pose tracking counts pushups, squats and sit-ups, and scores your form. No video ever leaves the phone.

  • Elemental boss fights

    Ryo, Kaori, Ultragnar and more. Each boss has an elemental weakness — picking the right exercise crits.

  • App Lock challenge

    Gate addictive apps behind a workout. TikTok wants in? Ten squats first. Powered by Android Accessibility.

  • Pixel-art avatar builder

    Millions of combinations — hairstyles, outfits, auras, weapons. The character is yours and levels with you.

  • Friends, leaderboards, challenges

    Compete globally or by country. Send a workout challenge to a friend — winner takes the XP.

  • Privacy-first by default

    Anonymous play out of the box; optional Google Sign-In for backup. All pose detection happens locally.

combat.kt
// Combat is a function of the user’s body.
// Rep → damage, weighted by form and combo.

data class Attack(
  val element: Element,
  val reps: Int,
  val formScore: Float, // 0–1
  val combo: Int
)

fun damage(a: Attack, boss: Boss): Int {
  val base  = a.reps * 9
  val crit  = if (a.element == boss.weakness) 2.0f else 1.0f
  val comboM = 1f + (a.combo - 1).coerceAtLeast(0) * 0.15f
  return (base * a.formScore * crit * comboM).toInt()
}

enum class Element { FIRE, AIR, WATER }
Highlights

What’s working.

Reps RPG launched recently and is still in active development. These are the early signals.

100% on-device
all pose detection runs locally via Google ML Kit — no video ever leaves the phone
3 exercises
pushups (Fire), squats (Air) and sit-ups (Water) — each one a different element
PUSHUPS SQUATS SIT-UPS
10K avatars
distinct pixel-art combinations across hairstyles, outfits, weapons and auras
Stack

Built with.

AAndroid KKotlin JCJetpack Compose MLML Kit Pose CXCameraX FBFirebase ASAccessibility FFigma PxAseprite
Keep exploring

Other work.

Available for new work

Have a project
in mind?

I'm currently taking on freelance work and full-time roles. Drop a line — I usually reply within a day.